package com.gonsin.gview.annotations.board.form;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * 复选项
 */
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface GSwitch {

    /**
     * 是否有效
     */
    boolean enable() default true;

    /**
     * 是否为必填
     */
    boolean required() default true;

    /**
     * 表单提交时对应的key值
     */
    String keyName() default "";

    /**
     * 下拉框显示的名字
     */
    String name() default "";

    /**
     * 判断条件显示，支持js语法，例如   showIf="type==1"
     */
    String showIf() default "1";

    /**
     * 判断条件禁用，支持js语法，例如   disableIf="{{form.type}} == 1"
     */
    String disableIf() default "0";

    /**
     * 单个表单项被修改时，触发具体的action事件
     */
    String onChangeAction() default "";

    /**
     * 2024/7/2 新增
     * 从session中获取权限，如果权限列表不包含该值，则不显示此按钮
     */
    String[] permission() default "";

}
